WOLF: A Modular Estimation Framework for Robotics

WOLF is a C++ library for state estimation for robotics presented in this article. More precisely, WOLF is a versatile multi-sensor fusion engine based on factor graphs. WOLF typically solves SLAM and odometry problems, and incorporates powerful features such as automatic sensor synchronization and self-calibration.

The following pointers should help you get started:

Installation

Install WOLF along with the required software dependencies.

WOLF for users

If you want to use WOLF in your robotics applications, you can start with the Using WOLF section, which contains all you need to know to configure your own WOLF application.

WOLF for developers

In the Developing and understanding WOLF section, you will find information on how to extend WOLF with your own algorithms. Follow the Hello WOLF tutorial to familiarize with the library and check the Documentation section to understand the WOLF data structures and algorithms.

WOLF 2.0 release!

We are happy to announce that the WOLF version 2.0 has been released! The new version is launched after a refactor of almost all the WOLF classes. From the user perspective, the main changes are:

  • ROS2 integration.

  • Using the yaml-schema-cpp library to improve the user experience. Complete and comprehensive error messages for wrong YAML input, YAML templates for all classes including documentation.

  • Improved the flexibility of problem YAML specification.

  • Apriltag plugin and package are deprecated. Replaced by external tag detection. SubscriberApriltag to be implemented soon in vision ROS2 package.

NOTE: Our presentation video is now deprecated about the specific content of the YAML file, but the philosophy, structure and workflow of WOLF is still the same:


Cite us!

If you use WOLF for a publication, please cite it as:

@article{sola-et-al-2022-wolf,
   author = {Joan Sol\\`a and
             Joan Vallv\\'e and
             Joaquim Casals and
             J\\'er\\'emie Deray and
             M\\'ed\\'eric Fourmy and
             Dinesh Atchuthan and
             Andreu Corominas{-}Murtra and
             Juan Andrade{-}Cetto},
   title = {{WOLF:} {A} modular estimation framework for robotics based on factor graphs},
   journal = {{IEEE} {R}obotics and {A}utomation {L}etters},
   year = {2022},
   volume={7},
   number={2},
   pages={4710-4717},
   doi={10.1109/LRA.2022.3151404}
}